Customized over-the-air television channel mapping for geographical area using crowdsourcing of over the air television channels

ABSTRACT

Embodiments are directed toward providing a customized over-the-air channel mapping to each content receiver in a geographical area based on crowdsourced mappings of available channels from at least a subset of the content receivers in that geographical area. When a new content receiver is installed in the geographical area, the customized over-the-air channel mapping is provided to the new content receiver and used by the new content receiver as its internal list of available over-the-air channels without performing a scan of its own. At least a portion of the content receivers in the geographical area perform a round-robin-type scan to identify new or missing channels in the geographical area. The customized over-the-air channel mapping is then updated when a new channel or missing channel threshold is reached. And the updated customized over-the-air channel mapping is provided to each content receiver in the geographical area.

TECHNICAL FIELD

The present disclosure relates generally to audiovisual contentdistribution, and more particularly, but not exclusively, tocrowdsourcing content receivers to identify over-the-air televisionchannels that are available in given area.

BACKGROUND Description of the Related Art

Content distributors deliver audiovisual content to users through avariety of different systems. These systems may include over-the-airbroadcast television, satellite television, and cable television. Eachof these systems has advantages and disadvantages. For example,over-the-air television is generally free, but is limited to thebroadcast range of the system and the terrain between the receivingantenna and the broadcast tower. On the one hand, satellite and cabletelevision can be accessed at great distances from the distributor, buton the other hand, they are generally rather expensive.

Some people are willing to pay monthly service fees to receive a largenumber of television channels from a satellite or cable televisiondistributor. But there are other people who are unwilling to pay suchfees and would prefer to receive free channels via over-the-airtelevision. Unfortunately, hills, mountains, great distances, and otherobstacles can impact which over-the-air television channels areavailable in a given area. Moreover, antennas may be added or removed,which can also change which over-the-air television channels areavailable. As a result, the viewer may be unaware of all of theover-the-air television channels that are available to that viewer. Itis with respect to these and other considerations that the embodimentsdescribed herein have been made.

BRIEF SUMMARY

Briefly described, embodiments are directed toward systems and methodsof providing a customized over-the-air channel mapping to each contentreceiver in a geographical area based on crowdsourced mappings ofavailable channels from content receivers in that geographical area. Achannel management server initially generates the customizedover-the-air channel mapping by polling or receiving availableover-the-air channel mappings from at least a first subset of theplurality of content receivers in the geographical area. These mappingsindicate which over-the-air channels are available to each respectivecontent receiver. The customized mapping is then provided to each newcontent receiver that is installed or set up in the geographical area.The new content receiver utilizes the customized over-the-air channelmapping as its own local available over-the-air channel mapping withoutperforming a scan for available over-the-air channels. In this way, thenew content receiver does not scan for available over-the-air channels.As a result, the user can begin utilizing the content receiver toreceive over-the-air content much quicker upon setup.

From time to time over-the-air channels may be added or removed from thegeographical area. The channel management server schedules around-robin-type background scan by a second subset of the contentreceivers in the geographical area. This second subset may include thesame content receivers, completely different content receivers, or somesubset of same and different content receivers, as the first subsetutilized to initialize the customized over-the-air channel mapping. Theround-robin-type scanning utilizes a plurality of time periods or cyclesin which one or more content receivers perform a scan for availableover-the-air channels during that particular time period. In this way,only a portion of the content receivers are performing the scan duringeach round-robin time period.

The channel management server then utilizes results from eachround-robin scan to determine if new channels are now available tocontent receivers in the geographical area or if missing channels are nolonger available to content receivers in the geographical area. If a newchannel is determined, then the customized over-the-air channel mappingis updated to add the new channel. If a missing channel is determined,then the customized over-the-air channel mapping is updated to removethe missing channel. The updated customized over-the-air channel mappingis then provided to each of the content receivers in the geographicalarea. As a result, the local over-the-air channel mappings maintained bycontent receivers in a geographical area can be updated without have toindividually scan for changes to the available channels.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

Non-limiting and non-exhaustive embodiments are described with referenceto the following drawings. In the drawings, like reference numeralsrefer to like parts throughout the various figures unless otherwisespecified.

For a better understanding of the present invention, reference will bemade to the following Detailed Description, which is to be read inassociation with the accompanying drawings:

FIG. 1 illustrates a context diagram for providing audiovisual contentto a user via over-the-air channels;

FIG. 2 is a diagram that illustrates an example of a neighborhood withmultiple content receivers receiving over-the-air channels;

FIG. 3 illustrates a logical flow diagram generally showing oneembodiment of a process performed by a channel management server formanaging an over-the-air channel mapping for a geographical area basedon mappings of available channels provided by content receivers in thatgeographical area in accordance with embodiments described herein;

FIG. 4 illustrates a logical flow diagram generally showing oneembodiment of a process performed by the channel management server forupdating the over-the-air channel mapping for a geographical area inaccordance with embodiments described herein;

FIG. 5 illustrates a logical flow diagram generally showing oneembodiment of a process performed by a content receiver to obtain anover-the-air television channel mapping in accordance with embodimentsdescribed herein;

FIG. 6 illustrates a logical flow diagram generally showing oneembodiment of a process performed by the content receiver to scan forchanges in over-the-air channels that are available to that contentreceiver in accordance with embodiments described herein; and

FIG. 7 shows a system diagram that describes one implementation ofcomputing systems for implementing embodiments described herein.

DETAILED DESCRIPTION

The following description, along with the accompanying drawings, setsforth certain specific details in order to provide a thoroughunderstanding of various disclosed embodiments. However, one skilled inthe relevant art will recognize that the disclosed embodiments may bepracticed in various combinations, without one or more of these specificdetails, or with other methods, components, devices, materials, etc. Inother instances, well-known structures or components that are associatedwith the environment of the present disclosure, including, but notlimited to, the communication systems and networks, have not been shownor described in order to avoid unnecessarily obscuring descriptions ofthe embodiments. Additionally, the various embodiments may be methods,systems, media, or devices. Accordingly, the various embodiments may beentirely hardware embodiments, entirely software embodiments, orembodiments combining software and hardware aspects.

Throughout the specification, claims, and drawings, the following termstake the meaning explicitly associated herein, unless the contextclearly dictates otherwise. The term “herein” refers to thespecification, claims, and drawings associated with the currentapplication. The phrases “in one embodiment,” “in another embodiment,”“in various embodiments,” “in some embodiments,” “in other embodiments,”and other variations thereof refer to one or more features, structures,functions, limitations, or characteristics of the present disclosure,and are not limited to the same or different embodiments unless thecontext clearly dictates otherwise. As used herein, the term “or” is aninclusive “or” operator, and is equivalent to the phrases “A or B, orboth” or “A or B or C, or any combination thereof,” and lists withadditional elements are similarly treated. The term “based on” is notexclusive and allows for being based on additional features, functions,aspects, or limitations not described, unless the context clearlydictates otherwise. In addition, throughout the specification, themeaning of “a,” “an,” and “the” include singular and plural references.

FIG. 1 illustrates a context diagram for providing audiovisual contentto a user via over-the-air channels. Example 100 includes contentprovider 104, information provider 106, content distributor 102, channelmanagement server 114, and user premises 122 a-122 c.

Typically, content providers 104 generate, aggregate, and/or otherwiseprovide audiovisual content that is provided to one or more users.Sometimes, content providers are referred to as “channels.” Examples ofcontent providers 104 may include, but are not limited to, film studios,television studios, network broadcasting companies, independent contentproducers, such as AMC, HBO, Showtime, or the like, or other entitiesthat provide content for user consumption. A content provider may alsoinclude individuals that capture personal or home videos, and distributethese videos to others over various online media-sharing websites orother distribution mechanisms. The content provided by content providers104 may be referred to as the program content, which may include movies,sitcoms, reality shows, talk shows, game shows, documentaries,infomercials, news programs, sports broadcasts, or the like. In thiscontext, program content may also include commercials or othertelevision advertisements. It should be noted that the commercials maybe added to the program content by the content providers 104 or thecontent distributor 102.

Information provider 106 may create and distribute data or otherinformation that describes or supports audiovisual content. Generally,this data is related to the content provided by content provider 104.For example, this data may include, for example, metadata, program name,closed-caption authoring, and placement within the content, time slotdata, pay-per-view and related data, or other information that isassociated with the content. In some embodiments, a content distributor102 may combine or otherwise associate the data from informationprovider 106 and the content from content provider 104, which may bereferred to as the distributed content. However, other entities may alsocombine or otherwise associate the content and other data together.

Content distributor 102 provides the audiovisual content, whethercontent obtained from content provider 104 and/or data from informationprovider 106, to a user through a variety of different distributionmechanisms. For example, in various embodiments, content distributor 102broadcasts the content through over-the-air signals via transmissiontower 112.

In various embodiments, content provider 104, information provider 106,and content distributor 102 communicate with each other viacommunication network 110. Communication network 110 may be configuredto couple various computing devices to transmit content/data from one ormore devices to one or more other devices. For example, communicationnetwork 110 may be the Internet, X.25 networks, or a series of smalleror private connected networks that carry the content and other data.Communication network 110 may include one or more wired or wirelessnetworks.

Content receivers 132 a-132 c are receiving devices that are on the userpremises 122 a-122 c, respectively, and are configured to receivecontent from content distributor 102. Content receivers 132 a-132 creceive content via over-the-air signals captured by antennas 126 a-126c, respectively. Content receivers 132 a-132 c decode the receivedcontent and provide it to display devices 124 a-124 c, respectively.Display devices 124 a-124 c may be a television, monitor, or otherdisplay device. Although FIG. 1 illustrates the content receivers 132a-132 c as providing content for display on the display devices 124a-124 c on the user premises 122 a-122 c, respectively, embodiments arenot so limited. In some other embodiments, the television receivers 132a-132 c provide content to a user's mobile device, such as a smartphone,tablet, or other computing device, that is at a remote location to theuser premises 122 a-122 c. Examples of content receivers 132 a-132 cinclude, but are not limited to, a set-top box, a cable connection box,a computer, or other content or television receivers.

Content receivers 132 a-132 c are also configured to communicate with achannel management server 114 that is remote to the user premises 122a-122 c. In various embodiments, the channel management server 114maintains a separate customized over-the-air channel mapping for one ormore different geographical areas. The channel management server 114communicates with a plurality of content receivers 132 a-132 c in agiven geographical area to determine which over-the-air channels areavailable in that geographical area. From this information, the channelmanagement server 114 generates the customized over-the-air channelmapping and provides it to new content receiver 132 that enter thatparticular geographical area. The customized over-the-air channelmapping is a list of information identifying the over-the-air channelsthat are determined to be available In a particular geographical area.The customized over-the-air channel mapping may be for televisionchannels (also referred to as customized over-the-air television channelmapping) or radio channels (also referred to as customized over-the-airradio channel mapping), or both. Accordingly, reference to channels orover-the-air channels includes over-the-air television channels, radiochannels, or both.

In various embodiments, the content receivers 132 a-132 c and thechannel management server 114 communicate via communication network 116.Communication network 116 may be configured to couple various computingdevices via data links 135 a-135 c to transmit content/data from one ormore content receivers 132 a-132 c, respectively, to one or more otherdevices. For example, communication network 116 may be the Internet,X.25 networks, or a series of smaller or private connected networks thatcarry the content and other data. Communication network 116 may includeone or more wired or wireless networks using wired or wireless datalinks 135 a-135 c. In various embodiments, communication network 116 maybe part of or integrated with communication network 110, or it may be aseparate communication network.

FIG. 2 is a diagram that illustrates an example of a neighborhood withmultiple content receivers receiving over-the-air channels. In thisexample geographical area 200 includes a plurality of user premises 122a-122 e in a neighborhood. Each user premises 122 a-122 e includes arespective content receiver 132 a-132 e and antennas 126 a-126 e.Content receivers 132 a-132 e receive radio signals for over-the-airchannels from one or more broadcast towers 112 via antennas 126 a-126 e,respectively. In this illustrated example, user premises 122 d-122 e arelocated in apartment building 208, while user premises 122 a-122 c areindividual user homes.

As described herein, a channel management server, not illustrated,generates a customized over-the-air channel mapping from availableover-the-air channel mappings received from a plurality of contentreceivers. This customized over-the-air channel mapping is then providedto new content receivers.

As illustrated, content receivers 132 b-132 e are in the geographicalarea 200. All of content receivers 132 b-132 e or a subset therefromprovide available over-the-air channel mappings to the channelmanagement server. In this illustration, assume that content receivers132 b-132 d are selected to perform an initial background scan forover-the-air channels that are available to those television receivers,and provide the resulting available over-the-air channel mapping back tothe channel management server. From these mappings, the channelmanagement server generates a customized over-the-air channel mappingfor geographical area 200.

Now assume that content receiver 132 a is a new content receiver that isbeing newly installed and set up in geographical area 200. The channelmanagement server sends the customized over-the-air channel mapping tocontent receiver 132 a. Content receiver 132 a then sets its local baseor default mapping of available over-the-air channels to be thecustomized over-the-air channel mapping.

As described in more detail herein, the channel management serverperiodically or at predetermined times schedules and instructs one ormore of content receivers 132 a-132 e to perform round-robin-likebackground scans for available over-the-air channels. In this way, thechannel management server can update the customized over-the-air channelmapping to add new channels that are detected in geographical area 200or remove channels that are no longer available in geographical area200.

For example, content receiver 132 a performs a first background scan andreports the results back to the channel management server. At some latertime, e.g., the next day or the next week, content receiver 132 dperforms a second background scan and reports the results back to thechannel management server. Following this second scan, content receiver132 c performs a third background scan and reports the results back tothe channel management server. After the third scan, additional scanscan be performed by other content receivers. For example, contentreceiver 132 a can perform another scan, or some other content receiverof content receivers 132 b-132 e can perform the scan. It should benoted that not all content receivers 132 a-132 e have to or will performthe scan. Similarly, some content receivers may perform multiple scansbefore another content receiver performs a first scan. In any event, thechannel management server schedules or instructs one or more of contentreceivers 132 a-132 e to perform background scans at predeterminedtimes, randomly, or during specific time periods or windows, such thatthe channel management server obtains sampled updates on whatover-the-air channels are available to the content receivers ingeographical area 200.

In some other embodiments, a content receiver may perform a scan foravailable over-the-air channels in response to input from a user. Forexample, the user may utilize a remote control or application executingon a mobile phone or other computing device to manually instruct thecontent receiver to perform a scan for available over-the-air channels.Once this scan is complete, the content receiver updates its localover-the-air channel mapping based on any new or missing over-the-airchannels, and the content receiver provides such changes in new ormissing over-the-air channels to the channel management server.

If, at any point during this background scanning process, the channelmanagement server identifies that the results from the content receiversindicate that a new channel is available in geographical area 200, thenthat new channel is added to the customized over-the-air channelmapping. Similarly, if the channel management server identifies that theresults from the content receivers indicate that a channel is missingand no longer available in geographical area 200, then that missingchannel is removed from the customized over-the-air channel mapping. Theupdated customized over-the-air channel mapping is then provided to eachcontent receiver 132 a-132 e, even though not all content receiversperformed an updating scan to find the new or missing over-the-airchannels.

The operation of certain aspects will now be described with respect toFIGS. 3-6. In at least one of various embodiments, processes 300 and 400described in conjunction with FIGS. 3 and 4, respectively, may beimplemented by or executed on one or more computing devices, such aschannel management server 114 in FIG. 1; and processes 500 and 600described in conjunction with FIGS. 5 and 6, respectively, may beimplemented by or executed on one or more computing devices, such ascontent receivers 132 a-132 c in FIG. 1.

FIG. 3 illustrates a logical flow diagram generally showing oneembodiment of a process performed by a channel management server formanaging an over-the-air channel mapping for a geographical area basedon mappings of available channels provided by content receivers in thatgeographical area in accordance with embodiments described herein.Process 300 begins, after a start block, at block 302, where ageographical area is selected. In some embodiments, the geographicalarea is defined by a zip code, city limits, geographical borders (e.g.,mountains), user-defined area, or other characteristics that define anarea where over-the-air channels are broadcast.

Process 300 proceeds to block 304, where a plurality of contentreceivers are identified as being in the selected geographical area. Invarious embodiments, the plurality of content receivers includes allcontent receivers that are in communication with a channel managementserver. In other embodiments, the plurality of identified contentreceivers in the geographical area is a subset, but not all, of thecontent receivers in the geographical area that communicate with thechannel management server. In some embodiments, the plurality of contentreceivers is a group of content receivers randomly selected from allcontent receivers in the geographical area. In other embodiments, theplurality of content receivers are identified or selected based on theirlocation in the geographical area such that the content receivers aresubstantially, evenly distributed throughout the geographical area toprovide a comprehensive sampling of different locations or positionswithin the geographical area.

Although process 300 is described as identifying a plurality of contentreceivers, embodiments are not so limited, and in some embodiments, onlya single content receiver may be identified, such as a content receiverin a middlemost location of the geographical area.

Process 300 continues to block 306, where a mapping of availableover-the-air channels is received from each of the plurality ofidentified content receivers in the geographical area. The availableover-the-air mapping received from a content receiver is a mapping ofover-the-air channels that are available to that particular contentreceiver. A channel is identified as being available if the radiofrequency signal strength of the channel received by the contentreceiver is sufficiently strong to provide a visible image on a displaydevice to a user. The mapping may include a list of channel numbers,frequencies (e.g., in VHF-low, VHF-High, UHF range), call signs, signalstrength, program number, or other Advanced Television Systems CommitteeOver-the-Air channel properties or information regarding channels thatare available to the content receiver.

Process 300 proceeds next to block 308, where a customized over-the-airchannel mapping is generated or determined for the geographical areabased on the received mappings. In some embodiments, the customizedover-the-air channel mapping is generated from an aggregate of allunique over-the-air channels that are available to the identifiedcontent receivers in the geographical area. In other embodiments, thecustomized over-the-air channel mapping is generated from over-the-airchannels that are available to a minimum number of content receivers.For example, an over-the-air channel is included in the customizedover-the-air channel mapping if 10 or more content receivers (or someother predetermined number of content receivers) include thatover-the-air channel in the available mappings received at block 306. Inyet other embodiments, over-the-air channels are included in thecustomized over-the-air channel mapping if the signal strength receivedby a threshold number of content receivers in the geographical area isabove a signal strength threshold.

Process 300 continues next to block 310, where an indication is receivedof a new content receiver in the geographical area. Such an indicationmay be receipt of a message from the new content receiver when it isinstalled or set up at a user's premises in the geographical area. Inother embodiments, the new content receiver is identified when a userregisters the new content receiver with the channel management server.In yet other embodiments, the new content receiver may be a contentreceiver that has been updated, re-formatted, or has otherwise lost ordeleted its local over-the-air channel mapping.

As mentioned herein, an initial scan for available over-the-air channelscan be time consuming and prevent the user for utilizing their contentreceiver for some time. Accordingly, when the new content receiver isinstalled or set up at the user's premises it does not perform aninitial scan for available over-the-air channels.

Moreover, in some situations, manufactures can pre-install over-the-airchannel mappings on content receivers before they are shipped to usersor technicians for installation in a particular geographic area.However, these pre-installed mappings are often incomplete andinaccurate because new over-the-air channels may added or oldover-the-air channels may be removed from being broadcast in thegeographical area before the content receiver is installed. As a result,the user may miss some channels that are now available to the user orthey may be burdened with non-existing channels. Accordingly, the newcontent receiver is considered not to have a pre-installed over-the-airchannel mapping, regardless of whether it does or not.

Process 300 proceeds to block 312, where the customized over-the-airchannel mapping is provided to the new content receiver. In variousembodiments, the customized over-the-air channel mapping is included inan electronic data message or series of messages or data packets that issent to the new content receiver. The new content receiver utilizes thecustomized over-the-air channel mapping to set up its own local channelmapping without performing any scan for available over-the-air channels,as described in more detail below in conjunction with FIG. 5. Since thecustomized over-the-air channel mapping is used as the initial or basemapping of the new content receiver, the customized over-the-air channelmapping may be referred to as a default over-the-air channel mapping forthe content receivers in the geographical area. In this way, the newcontent receiver has a list of those over-the-air channels that areavailable or accessible to the new content receiver and skippingunavailable channels or frequencies.

After block 312, process 300 terminates or otherwise returns to acalling process to perform other actions.

FIG. 4 illustrates a logical flow diagram generally showing oneembodiment of a process performed by the channel management server forupdating the over-the-air channel mapping for a geographical area inaccordance with embodiments described herein. Process 400 begins, aftera start block, at block 402, where a plurality of content receivers in ageographical area are selected. These selected content receivers performround-robin background scanning of available over-the-air channels inthe geographical area. In some embodiments, these content receivers maybe the same set of content receivers identified at block 304 in FIG. 3,or they may be a partial or completely different set of contentreceivers in the geographical area.

In various embodiments, the plurality of content receivers are selectedbased on their location in the geographical area such that the selectedcontent receivers are substantially, evenly distributed throughout thegeographical area to provide a comprehensive sampling of differentlocations within the geographical area. In some embodiments, theplurality of content receivers selected includes all content receiversin the geographical area that communicate with the channel managementserver. In other embodiments, the plurality of content receiversselected includes a subset, but not all, of the content receivers in thegeographical area that communicate with the channel management server.

In at least one embodiment, the plurality of content receivers areselected based on their usage. In some embodiments, only those contentreceivers that have an idle time above a threshold amount during apredetermined period of time may be selected. For example, a contentreceiver with 20 minutes of idle time every day may be selected, whereasa content receiver with 5 minutes of idle time once a week may not beselected. In this way, content receivers that have time to performbackground scans are selected without impacting those content receiversthat are busy with other tasks.

Process 400 proceeds to block 404, where the selected content receiversare instructed to perform a scan for available over-the-air channels aspart of a round-robin background scanning. The round-robin scanningincludes a plurality of cycles or time windows in which one or morecontent receivers performs a scan for available over-the-air channels.Examples of cycles or time windows include nightly, weekly, every threedays, or some other interval.

The content receivers are instructed to perform the scans such that eachof the plurality of content receivers selected at block 402 take turnsin performing the scan without all content receivers performing the scanat the same time or during the same cycle, time period, or timing window(e.g., on the same day or during the same week). Rather, a separatecontent receiver is instructed to perform the scan during each separatetime period or cycle.

In some embodiments, multiple content receivers may be instructed toperform the scan during the same time period. For example, a firstsubset of the selected content receivers are instructed to each performa scan during a first time period and a second subset of the selectedcontent receivers (which may be a completely different subset than thefirst subset or both subsets share at least one common content receiverwith at least one non-common content receiver) are instructed to eachperform a scan during a second time period that is different from thefirst time period.

In some other embodiments, multiple content receivers may be instructedto perform a partial scan during the same time period. In at least onesuch embodiment, each content receiver performs a scan on a differentsubset of channel frequencies. In this way, the time that each contentreceiver is performing a scan is reduced compared to performing a scanacross all channel frequencies, while collectively scanning all channelfrequencies. For example, a first content receiver (or a first subset ofcontent receivers) of the selected content receivers is instructed toperform a scan of channel frequencies associated with channels 2-15during a specified time period; a second content receiver (or a secondsubset of content receivers) of the selected content receivers isinstructed to perform a scan of channel frequencies associated withchannels 16-30 during the specified time period; a third contentreceiver (or a third subset of content receivers) of the selectedcontent receivers is instructed to perform a scan of channel frequenciesassociated with channels 31-45 during the specified time period; and soon. Accordingly, each channel frequency is scanned by at least onecontent receiver during the specified time period and that at least someof the selected content receivers are not scanning all channelfrequencies. In various embodiments, the content management serverselects which content receivers are to scan which subset of channelfrequencies and instructs them accordingly.

Additionally, one or more selected content receivers may be instructedto perform another background scan before other selected contentreceivers performs their initial scan. In this way, some contentreceivers may perform multiple scans before other content receiversperform their first scan. Selection of which content receivers areinstructed to perform additional scans may be random or it may be basedon how responsive or complete the results are from the various contentreceivers or their location in the geographical area.

Once the content receivers have performed their scan, the contentreceivers can be re-instructed to perform another scan, thus creating around-robin scan for available channels. As mentioned above, somecontent receivers may take additional turns scanning before othercontent receivers perform their initial scan or rescan. In someembodiments, after all the content receivers have performed their scan,a new plurality of content receivers may be selected at block 402, andseparately perform the scan.

In various embodiments, the selected content receivers are instructed toperform their respective scans during an idle state or condition of thecontent receiver, such as in the middle of the night, when the user hasnot interacted with the content receiver for a predetermined amount oftime, or the user has turned off the display device or manually put thecontent receiver into an idle state or condition. In other embodiments,the scan is performed as a background process that does not interferewith the user's use of the content receiver. Whether performed as abackground process or as a primary process during an idle condition, thescan is referred to as a background scan because it does not impact thenormal operations of the content receiver.

In some embodiments, the channel management server separately instructseach content receiver to perform a scan after it has received resultsfrom another content receiver. In other embodiments, the channelmanagement server generates a schedule of when each selected contentreceiver is to perform its respective scan. The channel managementserver then instructs each of the selected plurality of contentreceivers when to perform their respective background scans, regardlessof when other content receivers perform their scans. For example, thechannel management server may schedule content_receiver_A to perform itsscan on Monday night, content_receiver_B to perform its scan on Tuesdaynight, and so on. The channel management server can then instruct eachof these content receivers when to perform their scan before it evenreceives results from the first scan. In this way, each content receiveris performing its scan independent of other content receivers and notstuck waiting if a content receiver is unavailable or not responding. Inother embodiments, each content receiver waits until a previous contentreceiver has completed its scan and provided its results back to thechannel management server before performing its own scan. In at leastone such embodiment, notification of a previously performed scan can bereceived from the channel management server after it receives theresults of the previous scan or from the content receiver that performedthe previous scan.

Process 400 continues at block 406, where scan results are received fromthe next content receiver. In various embodiments, the scan resultsinclude a complete mapping of over-the-air channels that are availableto that content receiver. In other embodiments, the scan results includedifferences between the customized over-the-air channel mapping and thechannels found during the scan as being new available channels ormissing channels to the content receiver. As described elsewhere herein,an available channel is one where a content receiver received a signalstrength for the channel that is above a threshold value, which issufficiently strong to display a reasonably clear image on a displaydevice to the user of the content receiver.

Process 400 proceeds next to decision block 408, where a determinationis made whether a new channel was found during the scan. New channelsmay be found due to a new broadcast antenna being installed, a newchannel being broadcast in the geographical area, or removal or changein the landscape causing the signal strength of previously unavailablechannels to improve. A new channel is found if it is listed as availablein the results from the content receiver and is not previously listed inthe customized over-the-air channel mapping. If a new channel is foundin the scan, process 400 flows to decision block 410; otherwise, process400 flows to decision block 414.

At decision block 410, a determination is made whether a new channelthreshold is reached for each new channel found in the scan. In someembodiments, the new channel threshold is reached once a thresholdnumber of content receivers (e.g., 10 or more) have identified a newchannel in a scan. In other embodiments, the new channel threshold isreached if the signal strength received by a threshold number of contentreceivers in the geographical area is above a signal strength threshold.In yet other embodiments, the new channel threshold is reached if a newchannel has been found in a threshold number of scans over apredetermined amount of time (e.g., over a two-week span). In someembodiments, the new channel threshold may be a combination of differentthresholds, such as those listed above. If the new channel threshold hasbeen reached for one or more new channels, process 400 flows to block412; otherwise, process 400 flows to decision block 414.

At block 412, the customized over-the-air channel mapping is updated toinclude each new channel that satisfied the new channel threshold. Invarious embodiments, the details or information included in the mappingfor the new channel may be received from the content receiver orobtained from a third party or database of over-the-air channels. Itshould be recognized that one or a plurality of new channels may beidentified as a new channel or may be added to the customizedover-the-air channel mapping at a given time depending on variousfactors (including, but not limited to, weather conditions, number ofnew broadcast towers, locations of new broadcast towers, changes in thechannels being broadcast, etc.) that can impact whether an over-the-airchannel is available at a content receiver.

If no new channels are found in the scan at decision block 408 or if thenew channel threshold is not reached at decision block 410 or if newchannels have been added to the customized over-the-air channel mappingat block 410, process 400 proceeds to decision block 414. At decisionblock 414, a determination is made whether one or more channels in thecustomized over-the-air channel mapping are missing from the scan. Achannel is missing if it is not found during the scan but was previouslylisted in the customized over-the-air channel mapping. If a channel ismissing from the scan, process 400 flows to decision block 416;otherwise, process 400 flows to block 420.

At decision block 416, a determination is made whether a missing channelthreshold is reached for each missing channel not found in the scan. Insome embodiments, the missing channel threshold is reached once athreshold number of content receivers (e.g., 10 or more) have indicatedthat the channel was not found in a scan. In other embodiments, themissing channel threshold is reached if the signal strength received bya threshold number of content receivers in the geographical area isbelow a signal strength threshold. In yet other embodiments, the missingthreshold is reached if the channel has not been found in a thresholdnumber of content receivers over a predetermined amount of time (e.g.,over a two-week span). In some embodiments, the missing channelthreshold may be a combination of different thresholds, such as thoselisted above. If the missing channel threshold has been reached for oneor more missing channels, process 400 flows to block 418; otherwise,process 400 flows to block 420.

At block 418, the customized over-the-air channel mapping is updated toremove each missing channel that satisfied the missing channelthreshold. It should be recognized that one or a plurality of channelsmay be identified as a missing channel or may be removed from thecustomized over-the-air channel mapping at a given time.

If no missing channels are found in the scan at decision block 414 or ifthe new channel threshold is not reached at decision block 416 or ifmissing channels have been removed from the customized over-the-airchannel mapping at block 418, process 400 proceeds to block 420. Atblock 420, the updated customized over-the-air channel mapping isprovided to each content receiver in the geographical area thatcommunicates with the channel management server. Since the plurality ofcontent receivers selected at block 402 may be a subset of all thecontent receivers in the geographical area that communicate with thechannel management server, the over-the-air channel mapping of eachcontent receiver in the geographical area can be updated based on scansby only a small number of content receivers in the geographical area.

In various embodiments, the updated customized over-the-air channelmapping is pushed to each content receiver at a predetermined time or inresponse to an update. In at least one embodiment, the channelmanagement server and content receivers coordinate when the updatedcustomized over-the-air channel mapping is to be provided to the contentreceiver, such as during an idle state of the content receiver, orduring a scheduled update of the content receiver. If the customizedover-the-air channel mapping is not updated at block 412 or block 418,then the channel management server may not perform additional actions atblock 420, or it may notify each content receiver that there are noupdates to the customized over-the-air channel mapping.

After block 420, process 400 loops to block 406 to receive additionalscan results. As mentioned above, one or more of the plurality ofcontent receivers take turns in performing scans in a round-robin formatto ensure that scan results are obtained from content receivers indifferent locations throughout the geographical area to identify new ormissing channels in the customized over-the-air channel mapping.

In various embodiments, the channel management server performsadditional tasks, such as maintaining various statistical informationabout the content receivers in the geographical area. For example, suchinformation may include a count of the number of content receivers thatidentified or discovered each over-the-air channel in the geographicalarea, signal strength (min, max, average) of each channel frequencyidentified as being available in the geographical area, count of thenumber of over-the-air channels identified (min, max, average) as beingavailable to each content receiver, etc. This information can beprovided to or utilized by broadcasters to determine how to improvecoverage of available channels in the geographical area (e.g., addingadditional towers, boosting signal strength, etc.).

FIG. 5 illustrates a logical flow diagram generally showing oneembodiment of a process performed by a content receiver to obtain anover-the-air channel mapping in accordance with embodiments describedherein. Process 500 begins, after a start block, at block 502, where asetup request is received for a new content receiver. In someembodiments, this setup request is input from a user via a graphical orphysical user interface provided by the new content receiver. Such inputmay be provided by the user after the user has installed the new contentreceiver and turned it on, or as part of the user connecting the newcontent receiver to the internet.

Process 500 proceeds to block 504, where a location of the new contentreceiver and the setup request is provided to the channel managementserver. In various embodiments, the location may be input by the user ordetermined by the content receiver. For example, the location may be themailing or billing address of the user of the new content receiver, aGPS location of the content receiver, or other location information.

Process 500 continues at block 506, where a customized over-the-airchannel mapping is received for a geographical area associated with thenew content receiver. As indicated above in conjunction with FIG. 3, thechannel management server utilizes other content receivers in the samegeographical area of the new content receiver to generate a customizedover-the-air channel mapping for that geographical area.

Process 500 proceeds next to block 508, where the new content receiversets its local mapping of available channels based on the customizedover-the-air channel mapping. This setup of available channels takesplace instead of a scan for available channels, at least during theinitial setup of the new content receiver. Accordingly, the new contentreceiver does not search each possible channel radio frequency forsignals that have a signal strength above a threshold value to indicatean available channel. Since the content receiver does not search foravailable channels during the setup of the new content receiver butrelies on the customized over-the-air channel mapping, the new contentreceiver does not have to wait to finish a scan to finish, and canfinalize the setup much quicker and enable the user to begin using thenew content receiver.

Additional scans may be performed at the request of the user or inconjunction with round-robin scanning to update the customizedover-the-air channel mapping, as discussed in more detail below inconjunction with FIG. 6. Since the received customized over-the-airchannel mapping is utilized instead of a scan, the content receiver canbegin to receive television signals output corresponding to channelprogramming content to the user quicker than if the user had to wait forthe content receiver to perform a scan.

Moreover, the setup of the local mapping of available channels based onthe customized over-the-air channel mapping is performed independent ofany pre-installed mappings on the new content receiver. Thus, the newcontent receiver does not include any pre-installed mappings or itignores any pre-installed mappings that are stored on the new contentreceiver. In this way, the content receiver manufacture does not have tocustomize new content receivers in anticipation of the geographical areain which it will be installed, nor does the new content receiver have torely on any such pre-installed mappings—especially since suchpre-installed mapping may be for a different geographical area or it maybe incomplete or inaccurate.

After block 510, process 500 continues at block 510, where an updatedcustomized over-the-air channel mapping based on round-robin backgroundscanning, as described herein, is received. In various embodiments, thecontent receiver resets its local list or mapping of availableover-the-air channels to be the updated customized over-the-air channelmapping.

Since the user can add or remove channels from the content receiver'slocal available channel mapping—by performing additional scans ormanually adding or removing channels—the local available over-the-airchannel mapping may be different from the previous, or non-updated,customized over-the-air channel mapping. Accordingly, it may beundesirable to the user for the content receiver to reset the contentreceiver's local over-the-air channel mapping to be the updatedcustomized over-the-air channel mapping, and ignore the previous changesthat were made to the content receiver's local over-the-air channelmapping. Thus, in some embodiments, the content receiver updates itslocal available over-the-air channel mapping based on the updatedcustomized over-the-air channel mapping without overwriting itcompletely.

For example, if the updated customized over-the-air channel mappingincludes a new channel that is not in the content receiver's localavailable over-the-air channel mapping, then the content receiver addsthe new channel to the local available over-the-air channel mapping.Similarly, if the content receiver's local available over-the-airchannel mapping includes a channel that is missing in the updatedcustomized over-the-air channel mapping, then the content receiverremoves the missing channel from its local available over-the-airchannel mapping.

In yet other embodiments, the user may be prompted to select or approveeach change or difference between the updated customized over-the-airchannel mapping and the local available over-the-air channel mapping. Invarious embodiments, the content receiver may store user preferencesthat indicate how the updated customized over-the-air channel mapping isused to update the local available over-the-air channel mapping.

After block 508, process 500 terminates or otherwise returns to acalling process to perform other actions.

FIG. 6 illustrates a logical flow diagram generally showing oneembodiment of a process performed by the content receiver to scan forchanges in over-the-air channels that are available to that contentreceiver in accordance with embodiments described herein. Process 600begins, after a start block, at block 602, where a round-robin scanschedule or request is received from the channel management server. Asindicated above, the channel management server may individually instructwhich content receivers are to perform scans at particular times, or itmay provide a schedule on when that particular content receiver is toperform a scan.

Process 600 proceeds to block 604, where the content receiver scans foravailable over-the-air channels. In various embodiments, the scanincludes utilizing tuner and demodulator hardware circuits to cyclethrough each radio frequency in the over-the-air channel band toidentify those frequencies with a signal strength above a predeterminedthreshold or where the content receiver receives some identifyinginformation from the over-the-air channel. In some embodiments, multipletuner and demodulator circuits may be utilized to perform the scan atmultiple frequencies simultaneously

Process 600 continues at block 606, where an available over-the-airchannel mapping is generated based on the scan. In various embodiments,this mapping includes a list of channel numbers, frequencies (e.g., inVHF-low, VHF-High, UHF range), call signs, signal strength, programnumber, or other Advanced Television Systems Committee Over-the-Airchannel properties or information regarding channels that are availableto the content receiver. In various embodiments, the availableover-the-air channel mapping is generated in parallel with the scan,such that when the scan identifies an available channel, that channel isadded to the available over-the-air channel mapping for that contentreceiver.

Process 600 proceeds next to block 608, where the customizedover-the-air channel mapping is compared with the scanned mapping. Insome embodiments, this comparison may be performed after the scan iscomplete. In other embodiments, this comparison may be performed inconjunction and parallel with the scan such that the comparison isperformed at each frequency for available channels identified in thecustomized over-the-air channel mapping, or at each frequency identifiedby the scan as being an available channel.

Process 600 continues next at decision block 610, where a determinationis made whether one or more channels are found in the scanned mappingbut not in the customized over-the-air channel mapping based on thecomparison of the mappings. If a channel is in the scanned mapping butnot in the customized over-the-air channel mapping, then a new availablechannel has been found during the scan, and process 600 flows to block612; otherwise process 600 flows to decision block 614.

At block 612, each channel that is in the scanned mapping but not in thecustomized over-the-air channel mapping is identified and stored as anew channel in a scan result to be provided to channel managementserver. After block 612, process 600 flows to decision block 614.

If, at decision block 610, no new channels are found in the scannedmapping, process 600 flows from decision block 610 to decision block614. At decision block 614, a determination is made whether one or morechannels in the customized over-the-air channel mapping are missing inthe scanned mapping based on the comparison of the mappings. If achannel is missing in the scanned mapping, process 600 flows to block616; otherwise, process 600 flows to block 620.

At block 616, the antenna of the content receiver is modified. In someembodiments, the content receiver outputs a message, such as via adisplay device or an audible message, instructing the user of thecontent receiver to try to adjust the antenna connected to the contentreceiver. In some situations the missing channel may not have been foundby the content receiver because the antenna is misaligned or notpositioned correctly to receive the over-the-air radio signals. In atleast one embodiment, the instruction may provide a direction in whichto move the antenna. In other embodiments, the content receiver mayoutput a signal to a motor that controls a position of the antenna tocorrect the alignment of the antenna to try to receive the radio signalsfor the missing channel.

The direction to move the antenna or to instruct the user to move theantenna may be determined based on a known location of the broadcasttower associated with the missing channel or it may be inferred from thesignal strength associated with the missing channel received by othercontent receivers in the geographical area (e.g., a direction of thecontent receiver with the highest signal strength for the missingchannel relative to the location of the content receiver that is missingthe channel).

In various embodiments, block 616 is optional and is not performed.

Process 600 then continues at block 618, where each channel that is inthe customized over-the-air channel mapping but not in the scannedmapping is identified and stored as a missing channel in the scan resultto be provided to channel management server. After block 618, process600 flows to block 620.

If, at decision block 614, no missing channels are found in the scannedmapping, process 600 flows from decision block 614 to block 620. Atblock 620, the scan results of the new or missing channels is providedto the channel management server. In various embodiments, the contentreceiver provides the channel number, frequency, call sign, signalstrength, or other information or identifier of the new channel(s) thatare available to the content receiver or the missing channel(s) that areunavailable to the content receiver.

After block 620, process 600 terminates or returns to a calling processto perform other actions.

Although process 600 describes comparing the scanned mapping with thecustomized over-the-air channel mapping, embodiments are not so limited.In other embodiments, the content receiver provides the scanned mappingto the channel management server as the scan results, and the channelmanagement server performs the comparison between the scanned mapping ofmultiple content receivers with the customized over-the-air channelmapping.

FIG. 7 shows a system diagram that describes one implementation ofcomputing systems for implementing embodiments described herein. System700 includes content receiver 132 and channel management server 114. Forease of illustration, only one content receiver 132 is shown in FIG. 7,but as described elsewhere herein, the channel management server 114communicates with a plurality of content receivers 132 a-132 c.

Channel management server 114 communicates with a plurality of contentreceivers 132 to determine a customized over-the-air channel mapping fora geographical area and to update the customized over-the-air channelmapping using a round-robin scanning procedure, as discussed herein.

One or more general-purpose or special-purpose computing systems may beused to implement channel management server 114. Accordingly, variousembodiments described herein may be implemented in software, hardware,firmware, or in some combination thereof.

Channel management server 114 includes memory 730, one or more centralprocessing units (CPUs) 744, other I/O interfaces 748, othercomputer-readable media 750, and network connections 752.

Memory 730 includes one or more various types of non-volatile and/orvolatile storage technologies. Examples of memory 730 may include, butare not limited to, flash memory, hard disk drives, optical drives,solid-state drives, various types of random access memory (RAM), varioustypes of read-only memory (ROM), other computer-readable storage media(also referred to as processor-readable storage media), or the like, orany combination thereof. Memory 730 may be utilized to storeinformation, including computer-readable instructions that are utilizedby CPU 744 to perform actions, including embodiments described herein asbeing performed by the channel management server.

Memory 730 may have stored thereon over-the-air channel managementsystem 732, which includes available channel management module 734 andscanning schedule module 736. The available channel management module734 employs embodiments described herein to communicate with a pluralityof content receivers in a geographical area to obtain informationassociated with the over-the-air channels available to those contentreceivers and to generate a customized over-the-air channel mappingbased on that obtained information. Scanning schedule module 736 employsembodiments described herein to coordinate the periodic scanning byselect content receivers to update the customized over-the-air channelmapping. In various embodiments, the scanning schedule module 736 workswith the available channel management module 734 to update thecustomized over-the-air channel based on information received fromcontent receivers during their scheduled scans.

Memory 730 may also store other programs 740 and other data 742. Forexample, other data 742 may include a separate customized over-the-airchannel mapping for each of a plurality of different geographical areas,lists or information regarding the content receivers in thosegeographical areas, or other information.

Network connections 752 are configured to communicate with othercomputing devices, such as content receiver 132 via communicationnetwork 116. Other I/O interfaces 748 may include a keyboard, audiointerfaces, other video interfaces, or the like. Other computer-readablemedia 750 may include other types of stationary or removablecomputer-readable media, such as removable flash drives, external harddrives, or the like.

Content receiver 132 receives content from a content distributor, suchas content distributor 102 in FIG. 1, which is not shown for ease ofillustration. During setup, the content receiver 132 utilizes thecustomized over-the-air channel mapping to set up its own list ofavailable channels without ever performing a scan for channels, asdescribed herein. The content receiver 132 participates in a round-robinscanning procedure to periodically scan for available channels and toprovide new or missing channels to the channel management server 114, asdescribed herein.

One or more general-purpose or special-purpose computing systems may beused to implement content receiver 132. Accordingly, various embodimentsdescribed herein may be implemented in software, hardware, firmware, orin some combination thereof.

Content receiver 132 includes memory 770, one or more central processingunits (CPUs) 784, display interface 786, other I/O interfaces 788, othercomputer-readable media 790, and network connections 792.

Memory 770 may include one or more various types of non-volatile and/orvolatile storage technologies. Examples of memory 770 may include, butare not limited to, flash memory, hard disk drives, optical drives,solid-state drives, various types of random access memory (RAM), varioustypes of read-only memory (ROM), other computer-readable storage media(also referred to as processor-readable storage media), or the like, orany combination thereof. Memory 770 may be utilized to storeinformation, including computer-readable instructions that are utilizedby CPU 784 to perform actions, including embodiments described herein asbeing performed by the content receiver.

Memory 770 may have stored thereon local over-the-air channel managementsystem 772, which includes scanning module 774 and available channelmodule 776. The scanning module 774 employs embodiments described hereinto perform scans to identify new or missing channels compared to thecustomized over-the-air channel mapping. Available channel module 776employs embodiments described herein to set its own local over-the-airchannel mapping based on the customized over-the-air channel mappingprovided by the channel management server 114. In some embodiments, auser can provide input to adjust the local over-the-air channel mapping,such as if the user does not want to see a particular channel as beingavailable.

Memory 770 may also store other programs 780 and other data 782. Forexample, other data 782 may include the customized over-the-air channelmapping, a local over-the-air television mapping, or other information.

Display interface 786 is configured to provide content to a displaydevice, such as display device 124. Network connections 792 areconfigured to communicate with other computing devices, such as channelmanagement server 114 via communication network 110. Other I/Ointerfaces 788 may include a keyboard, audio interfaces, other videointerfaces, or the like. Other computer-readable media 790 may includeother types of stationary or removable computer-readable media, such asremovable flash drives, external hard drives, or the like.

The various embodiments described above can be combined to providefurther embodiments. These and other changes can be made to theembodiments in light of the above-detailed description. In general, inthe following claims, the terms used should not be construed to limitthe claims to the specific embodiments disclosed in the specificationand the claims, but should be construed to include all possibleembodiments along with the full scope of equivalents to which suchclaims are entitled. Accordingly, the claims are not limited by thedisclosure.

The invention claimed is:
 1. A method, comprising: receiving, by acontent receiver and from a channel management server, an over-the-airchannel mapping that is customized for a geographical area that includesthe content receiver; storing, by the content receiver, the over-the-airchannel mapping as a list of current over-the-air channels available tothe content receiver without the content receiver scanning for availableover-the-air channels; receiving, by the content receiver and from thechannel management server, a schedule identifying a first plurality oftime periods in which to perform scans for over-the-air channels,wherein each time period in the first plurality of time periods isnon-overlapping with a second plurality of time periods in which anothercontent receiver in the geographical area is scheduled to perform scans;performing, by the content receiver, a scan for over-the-air channelsthat are available to the content receiver during each of the firstplurality of time periods; and providing, by the content receiver, ascan result from at least one scan to the channel management server toupdate the over-the-air channel mapping for the geographical area. 2.The method of claim 1, wherein providing the scan result to the channelmanagement server further comprises: generating, by the contentreceiver, the scan result by identifying at least one new channel thatis not in the over-the-air channel mapping but is identified during theat least one scan as being available to the content receiver; andproviding, by the content receiver, an identity of the at least one newchannel to the channel management server.
 3. The method of claim 1,wherein providing the scan result to the channel management serverfurther comprises: generating, by the content receiver, the scan resultby identifying at least one missing channel that is in the over-the-airchannel mapping but is unavailable to the content receiver during the atleast one scan; and providing, by the content receiver, an identity ofthe at least one missing channel to the channel management server. 4.The method of claim 1, further comprising: receiving, by the contentreceiver and from the channel management server, an updated over-the-airchannel mapping based on scan results from other content receivers inthe geographical area.
 5. The method of claim 1, further comprising:during the scan, identifying, by the content receiver, a missing channelthat is in the over-the-air channel mapping but unavailable to thecontent receiver; and determining an alignment correction for an antennautilized by the content receiver to receive the missing channel.
 6. Themethod of claim 5, further comprising: sending a control signal to amotor that changes a position or orientation of the antenna based on thedetermined alignment correction.
 7. The method of claim 5, whereindetermining the alignment correction for the antenna further comprises:determining a direction to move the antenna based on a known location ofa broadcast tower associated with the missing channel.
 8. The method ofclaim 5, wherein determining the alignment correction for the antennafurther comprises: determining a direction to move the antenna based onsignal strength associated with the missing channel received by othercontent receivers.
 9. The method of claim 1, further comprising: duringthe scan, identifying, by the content receiver, a missing channel thatis in the over-the-air channel mapping but unavailable to the contentreceiver; and presenting a message to a user of the content receiver toadjust an alignment of an antenna.
 10. A content receiver, comprising: amemory that stores computer instructions and an over-the-air channelmapping that identifies a plurality of over-the-air channels; and aprocessor that executes the computer instructions to perform actions,including: receiving, from a channel management server, the over-the-airchannel mapping that is customized for a geographical area that includesthe content receiver; storing the over-the-air channel mapping in thememory without scanning for available over-the-air channels; receiving,from the channel management server, a schedule identifying a firstplurality of time periods in which to perform scans for over-the-airchannels, wherein each time period in the first plurality of timeperiods is non-overlapping with a second plurality of time periods inwhich another content receiver in the geographical area is instructed toperform scans; performing a scan for over-the-air channels that areavailable to the content receiver during each of the first plurality oftime periods; and providing a scan result from at least one scan to thechannel management server to update the over-the-air channel mapping forthe geographical area.